.TH std::ios_base::openmode 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::ios_base::openmode \- std::ios_base::openmode

.SH Synopsis
   typedef /* implementation defined */ openmode;
   static constexpr openmode app       = /* implementation defined */;

   static constexpr openmode binary    = /* implementation defined */;
   static constexpr openmode in        = /* implementation defined */;
   static constexpr openmode out       = /* implementation defined */;
   static constexpr openmode trunc     = /* implementation defined */;

   static constexpr openmode ate       = /* implementation defined */;
   static constexpr openmode noreplace = /* implementation defined */;  (since C++23)

   Specifies available file open flags. It is a BitmaskType, the following constants
   are defined:

   Constant          Explanation
   app               seek to the end of stream before each write
   binary            open in binary mode
   in                open for reading
   out               open for writing
   trunc             discard the contents of the stream when opening
   ate               seek to the end of stream immediately after open
   noreplace (C++23) open in exclusive mode

.SH Example


// Run this code

 #include <fstream>
 #include <iostream>
 #include <string>

 int main()
 {
     const char* fname = "unique_name.txt";

     // write to a temporary stream object
     std::fstream(fname, std::ios::out | std::ios::trunc) << "Hi";

     std::string s;
     std::fstream(fname, std::ios::in) >> s;
     std::cout << s << '\\n';
 }

.SH Output:

 Hi

.SH See also

   open          opens a file and configures it as the associated character sequence
                 \fI(public member function of std::basic_filebuf<CharT,Traits>)\fP
                 constructs a basic_stringbuf object
   constructor   \fI\fI(public member\fP function of\fP
                 std::basic_stringbuf<CharT,Traits,Allocator>)
